package com.frejoys.common.vo.app;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;

@Data
public class VerifyListVo {


    @Schema(type = "Integer", name = "id", description = "审核id", required = true, defaultValue = "1")
    private Integer id;

    @Schema(type = "Integer", name = "commonId", description = "通用id，根据type变化，例如店铺id", required = true, defaultValue = "1")
    private Integer commonId;

    @Schema(type = "Integer", name = "status", description = "状态：0未通过，1申请中，2代理人审核通过，3管理员审核通过", required = true, defaultValue = "1")
    private Integer status;

    @Schema(type = "Integer", name = "type", description = "类型：1.商家入驻，2店铺，3商品，4店铺活动", required = true, defaultValue = "1")
    private Integer type;

    @Schema(type = "String", name = "remark", description = "原因描述，可选", required = true, defaultValue = "八匹狼")
    private String remark;

    @Schema(type = "Integer", name = "reasonId", description = "原因：驳回必须选择", required = true, defaultValue = "1")
    private Integer reasonId;

    @Schema(type = "String", name = "reason", description = "驳回原因", required = false, defaultValue = "1")
    private String reason;

    @Schema(type = "Integer", name = "createTime", description = "创建时间", required = true, defaultValue = "1")
    private Integer createTime;

    @Schema(type = "Integer", name = "updateTime", description = "更新时间", required = true, defaultValue = "1")
    private Integer updateTime;


    //活动信息
    @Schema(type = "Integer", name = "rebateRatio", description = "返利比例", required = true, defaultValue = "1")
    private Integer rebateRatio;

    @Schema(type = "BigDecimal", name = "rebateMaxMoney", description = "返利最大单笔金额限制", required = true, defaultValue = "1")
    private BigDecimal rebateMaxMoney;

    @Schema(type = "Integer", name = "promotionRatio", description = "推广比例", required = true, defaultValue = "1")
    private Integer promotionRatio;

    @Schema(type = "Integer", name = "activityStartTime", description = "活动开始时间", required = true, defaultValue = "1")
    private Integer activityStartTime;

    @Schema(type = "Integer", name = "activityEndTime", description = "活动结束时间", required = true, defaultValue = "1")
    private Integer activityEndTime;

    @Schema(type = "Integer", name = "activityType", description = "活动类型：1排队返利 2共享免单", required = true, defaultValue = "1")
    private Integer activityType;

    @Schema(type = "Float", name = "startRatio", description = "起始比例", required = true, defaultValue = "1")
    private Float startRatio;

    @Schema(type = "Float", name = "endRatio", description = "结束比例", required = true, defaultValue = "1")
    private Float endRatio;

    @Schema(type = "Integer", name = "allowCount", description = "允许的总返利人数", required = true, defaultValue = "1")
    private Integer allowCount;


    // 商品信息
    @Schema(type = "String", name = "goodsName", description = "商品名称", required = true, defaultValue = "八匹狼")
    private String goodsName;

    @Schema(type = "String", name = "coverUrl", description = "商品封面图", required = true, defaultValue = "xxx/xxx.jpg")
    private String coverUrl;

    @Schema(type = "BigDecimal", name = "oriPrice", description = "原价", required = true, defaultValue = "100")
    private BigDecimal oriPrice;

    @Schema(type = "BigDecimal", name = "price", description = "现价", required = true, defaultValue = "100")
    private BigDecimal price;

    @Schema(type = "Integer", name = "varSoldCount", description = "虚拟数量", required = true, defaultValue = "1")
    private Integer varSoldCount;

    //店铺信息
    @Schema(type = "String", name = "logo", description = "logo", required = true, defaultValue = "xxx/xxx.jpg")
    private String logo;

    @Schema(type = "String", name = "province", description = "省", required = true, defaultValue = "四川省")
    private String province;

    @Schema(type = "String", name = "city", description = "市", required = true, defaultValue = "成都市")
    private String city;

    @Schema(type = "String", name = "district", description = "区县", required = true, defaultValue = "武侯区")
    private String district;

    @Schema(type = "String", name = "cityName", description = "市", required = true, defaultValue = "成都市")
    private String cityName;

    @Schema(type = "String", name = "provinceName", description = "省", required = true, defaultValue = "四川省")
    private String provinceName;

    @Schema(type = "String", name = "district", description = "区县", required = true, defaultValue = "武侯区")
    private String districtName;

    @Schema(type = "String", name = "street", description = "街道地址", required = true, defaultValue = "xxx街道")
    private String street;

    @Schema(type = "String", name = "address", description = "详细地址", required = true, defaultValue = "xxx小区505")
    private String address;

    @Schema(type = "String", name = "storeTel", description = "店铺电话", required = true, defaultValue = "13352222222")
    private String storeTel;

    @Schema(type = "String", name = "storeCoverUrl", description = "店铺封面广告图", required = true, defaultValue = "xxx.npg")
    private String storeCoverUrl;

    @Schema(type = "String", name = "coverShowUrl", description = "店铺展示图", required = true, defaultValue = "xxx.npg")
    private String coverShowUrl;

    @Schema(type = "String", name = "storeStartTime", description = "营业起始时间 小时00", required = true, defaultValue = "00")
    private String storeStartTime;

    @Schema(type = "String", name = "storeEndTime", description = "营业结束时间 小时24", required = true, defaultValue = "24")
    private String storeEndTime;

    @Schema(type = "String", name = "storeName", description = "店铺名字", required = true, defaultValue = "马小贱")
    private String storeName;

    //商家入驻
    @Schema(type = "Long", name = "userId", description = "用户id", required = true, defaultValue = "1")
    private Long userId;

    @Schema(type = "String", name = "nickname", description = "用户昵称", required = true, defaultValue = "马小贱")
    private String nickname;

    @Schema(type = "Long", name = "agentUserId", description = "代理人用户id", required = true, defaultValue = "1")
    private Long agentUserId;

    @Schema(type = "String", name = "agentUserNickName", description = "代理人用户昵称", required = true, defaultValue = "马小贱")
    private String agentUserNickName;

    @Schema(type = "String", name = "storeEnterName", description = "商家入驻店铺名称", required = true, defaultValue = "小米旗舰店")
    private String storeEnterName;

    @Schema(type = "String", name = "storeEnterTel", description = "商家入驻电话", required = true, defaultValue = "13555555555")
    private String storeEnterTel;

    @Schema(type = "String", name = "idCardImageUrl", description = "身份证正反面图片", required = true, defaultValue = "xxx.img")
    private String idCardImageUrl;

    @Schema(type = "String", name = "businessLicenseUrl", description = "营业执照", required = true, defaultValue = "xxx.img")
    private String businessLicenseUrl;

}
